home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Windows Expert
/
Windows Expert.iso
/
windownt
/
perlnt.zip
/
src
/
perly.c
< prev
next >
Wrap
C/C++ Source or Header
|
1993-07-25
|
66KB
|
1,140 lines
#ifndef lint
static char yysccsid[] = "@(#)yaccpar 1.8 (Berkeley) 01/20/90";
#endif
#define YYBYACC 1
#include "INTERN.h"
#include "perl.h"
#if defined(NT)
#undef DELETE
#endif
/*SUPPRESS 530*/
/*SUPPRESS 593*/
/*SUPPRESS 595*/
STAB *scrstab;
ARG *arg4; /* rarely used arguments to make_op() */
ARG *arg5;
typedef union {
int ival;
char *cval;
ARG *arg;
CMD *cmdval;
struct compcmd compval;
STAB *stabval;
FCMD *formval;
} YYSTYPE;
#define WORD 257
#define LABEL 258
#define APPEND 259
#define OPEN 260
#define SSELECT 261
#define LOOPEX 262
#define DOTDOT 263
#define USING 264
#define FORMAT 265
#define DO 266
#define SHIFT 267
#define PUSH 268
#define POP 269
#define LVALFUN 270
#define WHILE 271
#define UNTIL 272
#define IF 273
#define UNLESS 274
#define ELSE 275
#define ELSIF 276
#define CONTINUE 277
#define SPLIT 278
#define FLIST 279
#define FOR 280
#define FILOP 281
#define FILOP2 282
#define FILOP3 283
#define FILOP4 284
#define FILOP22 285
#define FILOP25 286
#define FUNC0 287
#define FUNC1 288
#define FUNC2 289
#define FUNC2x 290
#define FUNC3 291
#define FUNC4 292
#define FUNC5 293
#define HSHFUN 294
#define HSHFUN3 295
#define FLIST2 296
#define SUB 297
#define FILETEST 298
#define LOCAL 299
#define DELETE 300
#define RELOP 301
#define EQOP 302
#define MULOP 303
#define ADDOP 304
#define PACKAGE 305
#define AMPER 306
#define FORMLIST 307
#define REG 308
#define ARYLEN 309
#define ARY 310
#define HSH 311
#define STAR 312
#define SUBST 313
#define PATTERN 314
#define RSTRING 315
#define TRANS 316
#define LISTOP 317
#define OROR 318
#define ANDAND 319
#define UNIOP 320
#define LS 321
#define RS 322
#define MATCH 323
#define NMATCH 324
#define UMINUS 325
#define POW 326
#define INC 327
#define DEC 328
#define YYERRCODE 256
short yylhs[] = { -1,
26, 0, 25, 25, 12, 12, 12, 5, 3, 6,
6, 7, 7, 7, 7, 7, 10, 10, 10, 10,
10, 10, 9, 9, 9, 9, 8, 8, 8, 8,
8, 8, 8, 8, 11, 11, 21, 21, 24, 24,
1, 1, 1, 2, 2, 27, 28, 15, 13, 13,
16, 14, 14, 14, 14, 14, 14, 14, 14, 14,
14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
14, 14, 14, 14, 14, 14, 14, 17, 17, 17,
17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
17, 22, 22, 22, 22, 22, 22, 18, 18, 19,
19, 20, 20, 4, 4, 23,
};
short yylen[] = { 2,
0, 2, 3, 2, 0, 2, 5, 4, 0, 0,
2, 1, 2, 1, 2, 3, 1, 1, 3, 3,
3, 3, 5, 5, 3, 3, 6, 6, 4, 4,
7, 6, 10, 2, 0, 1, 0, 1, 0, 1,
1, 1, 1, 4, 3, 3, 3, 2, 3, 1,
2, 3, 4, 4, 4, 4, 4, 4, 4, 4,
3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3, 3, 3, 5, 3, 3, 1, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 1, 4, 3,
2, 2, 2, 1, 1, 4, 1, 1, 5, 6,
5, 4, 5, 6, 8, 1, 1, 1, 1, 1,
5, 5, 4, 4, 2, 5, 5, 4, 4, 2,
1, 2, 1, 2, 2, 1, 2, 4, 7, 2,
4, 5, 4, 2, 2, 3, 1, 5, 6, 6,
7, 9, 6, 2, 4, 2, 4, 1, 1, 6,
5, 4, 5, 4, 2, 1, 1, 3, 3, 4,
5, 5, 6, 6, 7, 8, 4, 2, 6, 1,
1, 1, 2, 2, 3, 3, 3, 1, 1, 1,
1, 1, 1, 2, 1, 1,
};
short yydefred[] = { 1,
0, 10, 0, 40, 0, 0, 0, 12, 41, 11,
14, 0, 42, 43, 0, 0, 0, 0, 17, 9,
186, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 106, 0, 97,
95, 109, 108, 107, 110, 0, 0, 0, 0, 0,
0, 0, 15, 0, 0, 0, 13, 0, 0, 0,
0, 171, 170, 34, 0, 45, 46, 47, 10, 130,
0, 127, 0, 122, 0, 0, 93, 0, 180, 181,
0, 146, 0, 0, 144, 155, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 134, 135,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 182, 183, 0, 168, 0, 0, 86,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 124, 0, 0, 0, 84, 85,
0, 0, 0, 0, 0, 0, 0, 4, 16, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 82, 83, 44, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 29, 0,
30, 0, 25, 0, 26, 0, 0, 0, 36, 0,
0, 136, 0, 0, 0, 0, 0, 0, 158, 159,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 185, 0, 0, 6, 0, 3, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 8, 131,
0, 0, 0, 0, 128, 113, 0, 118, 0, 147,
0, 145, 0, 0, 0, 0, 152, 0, 154, 0,
0, 0, 133, 0, 0, 0, 0, 0, 160, 0,
0, 0, 0, 0, 167, 0, 0, 89, 0, 0,
114, 0, 119, 0, 0, 96, 0, 102, 0, 184,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 132, 0, 0, 111, 116, 0, 27, 28,
23, 24, 151, 0, 0, 0, 32, 138, 0, 0,
0, 0, 161, 162, 0, 0, 0, 0, 0, 153,
0, 0, 112, 117, 99, 103, 101, 0, 0, 0,
0, 143, 150, 31, 0, 139, 0, 140, 0, 163,
164, 0, 0, 169, 104, 0, 100, 7, 129, 0,
141, 0, 165, 0, 0, 0, 0, 166, 105, 33,
142,
};
short yydgoto[] = { 1,
8, 9, 89, 255, 76, 3, 10, 11, 77, 219,
220, 168, 79, 80, 292, 294, 81, 198, 102, 137,
208, 82, 83, 12, 84, 2, 13, 14,
};
short yysindex[] = { 0,
0, 0, -193, 0, -54, -229, -212, 0, 0, 0,
0, 383, 0, 0, 22, -232, -31, 40, 0, 0,
0, -37, -36, -132, 562, -7, 107, -2, 2819, -29,
-23, -22, -21, 109, 111, -3, -4, 113, 123, 143,
170, 172, 173, 174, 175, 186, 187, 188, 189, -34,
191, 200, 2896, 202, 11, -228, -60, 0, -32, 0,
0, 0, 0, 0, 0, 741, 848, 2819, 2819, 2819,
2819, 912, 0, 2819, 2819, -98, 0, 98, -35, 1707,
-197, 0, 0, 0, -64, 0, 0, 0, 0, 0,
3011, 0, 3105, 0, 204, -30, 0, -122, 0, 0,
-231, 0, -231, -231, 0, 0, 2819, -31, 2819, -31,
2819, -31, 2819, -31, 2819, 2819, 205, 1027, 0, 0,
1144, 3105, 3105, 3105, 3105, 3105, 206, 1208, 2819, 2819,
2819, 2819, 2819, 0, 0, -237, 0, -237, 2819, 0,
-122, 2819, 131, -62, 216, 220, 2819, 2819, 2819, 2819,
2819, 5754, 2819, 221, 0, -122, -197, -197, 0, 0,
229, 32, -197, -197, -31, 224, -31, 0, 0, 2819,
2819, 2819, 2819, 2819, 2819, 2819, 2819, 1319, 1494, 2819,
2819, 2819, 2819, 1605, 1669, 1780, 1955, 2066, 2819, 2819,
2130, 0, 0, 0, -113, 281, 1707, 279, 0, 5647,
283, 2244, 2362, 284, 289, 293, 221, 294, 0, 65,
0, 67, 0, 126, 0, 5528, 32, 2819, 0, 286,
-39, 0, 305, 279, 303, 303, 328, 329, 0, 0,
130, 5658, 5647, 5647, 5647, 5647, 333, 303, 5658, 32,
2819, 252, 2436, 2533, 74, -12, 84, -9, 221, 221,
221, 2819, 0, 2725, 297, 0, 2819, 0, 221, 221,
221, 221, 1707, 474, -122, -187, 2819, -257, 2819, -138,
1707, 954, 117, 512, 2819, 238, 2819, 238, 2819, 486,
2819, -162, 2819, -162, 51, 51, 2819, 51, 0, 0,
2819, 348, 2819, 303, 0, 0, 32, 0, 32, 0,
2819, 0, -31, -31, -31, -31, 0, 146, 0, 32,
2819, -31, 0, 352, 279, 303, 3105, 3105, 0, 353,
153, 279, 303, 303, 0, 279, 355, 0, 100, 2819,
0, 32, 0, 32, 276, 0, 277, 0, 3, 0,
2819, 154, 1707, 1707, 2819, 1707, 1707, 1707, 1707, 1707,
1707, 221, 0, 1707, 303, 0, 0, 32, 0, 0,
0, 0, 0, 362, -31, 345, 0, 0, 364, 279,
365, 303, 0, 0, 367, 369, 279, 303, 370, 0,
287, 114, 0, 0, 0, 0, 0, 14, -31, 1989,
372, 0, 0, 0, 1027, 0, 373, 0, 303, 0,
0, 374, 279, 0, 0, 292, 0, 0, 0, 381,
0, 279, 0, 384, 386, -31, 393, 0, 0, 0,
0,
};
short yyrindex[] = { 0,
0, 0, 70, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 3189, 3385, 0, 3460, 0, 0, 5031, 0,
0, 0, 0, 3497, 0, 0, 3539, 0, 0, 0,
0, 0, 3576, 0, 0, 0, 0, 0, 0, 0,
0, 0, 5098, 0, 0, 0, 3661, 0, 3793, 0,
0, 0, 0, 0, 0, 5195, 5207, 0, 0, 0,
0, 0, 0, 0, 0, 1, 0, 0, -11, 2796,
5280, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3867, 3661, 0, 4782, 0, 0,
0, 0, 0, 0, 0, 0, 396, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 385, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4825, 0, 0, 0, 3909, 3952, 0, 0, 0, 0,
5347, 3661, 0, 4158, 0, 4849, 5444, 5501, 0, 0,
3994, 0, 5570, 5596, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 452, 2647, 164, 0, 128, 404,
0, 0, 0, 0, 0, 0, 23, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
389, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 4200, 4243,
4285, 0, 0, 0, 4084, 0, 0, 0, 30, 64,
79, 81, 3733, 1030, 4916, 3409, 0, 4534, 0, 4576,
3830, 0, 1883, 1422, 0, 5843, 0, 5894, 0, 4957,
0, 4666, 0, 4740, 4375, 4449, 0, 4491, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
394, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 3878, 4698, 0, 4858, 4989, 5104, 5370, 5668,
5820, 417, 0, 165, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1582,
0, 0, 0, 0, 418, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0,
};
short yygindex[] = { 0,
0, 0, 0, -178, -17, 335, 0, 0, 0, 448,
66, 0, 6067, 342, 168, -148, 430, -69, -6, -96,
151, 0, 0, 0, -87, 0, 0, 0,
};
#define YYTABLESIZE 6408
short yytable[] = { 87,
5, 253, 91, 93, 254, 136, 16, 97, 174, 203,
107, 289, 108, 110, 112, 114, 109, 111, 113, 134,
209, 105, 211, 201, 213, 99, 215, 17, 145, 18,
148, 174, 101, 5, 174, 121, 118, 104, 309, 237,
5, 238, 312, 5, 18, 5, 174, 18, 153, 155,
144, 223, 224, 225, 226, 227, 228, 174, 150, 5,
148, 328, 147, 38, 4, 189, 190, 308, 191, 2,
21, 5, 253, 135, 86, 254, 315, 316, 100, 146,
336, 38, 85, 338, 321, 322, 323, 324, 21, 326,
149, 20, 147, 20, 204, 387, 205, 206, 88, 20,
20, 20, 39, 6, 22, 304, 407, 305, 174, 39,
174, 7, 39, 176, 39, 178, 179, 174, 356, 19,
357, 20, 22, 5, 94, 5, 5, 174, 39, 192,
193, 365, 335, 187, 188, 189, 190, 19, 191, 20,
178, 179, 337, 174, 4, 355, 103, 256, 115, 258,
116, 5, 122, 383, 186, 384, 169, 174, 381, 364,
189, 190, 123, 191, 178, 186, 306, 370, 178, 174,
319, 178, 406, 174, 377, 378, 165, 166, 167, 392,
178, 179, 124, 6, 189, 190, 363, 191, 186, 293,
186, 7, 39, 374, 389, 39, 291, 174, 187, 188,
189, 190, 15, 191, 179, 51, 391, 179, 51, 125,
185, 126, 127, 128, 129, 359, 360, 361, 362, 90,
92, 186, 134, 399, 367, 130, 131, 132, 133, 403,
138, 170, 171, 172, 173, 170, 171, 172, 173, 139,
184, 142, 194, 202, 218, 242, 229, 371, 372, 99,
412, 186, 119, 241, 99, 243, 5, 5, 5, 244,
5, 5, 5, 257, 174, 5, 5, 5, 5, 5,
5, 5, 5, 5, 5, 186, 135, 394, 5, 5,
5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
5, 408, 100, 120, 117, 5, 5, 100, 5, 5,
5, 5, 5, 5, 5, 5, 5, 5, 143, 252,
5, 290, 291, 295, 300, 39, 39, 5, 5, 39,
39, 39, 301, 302, 303, 39, 39, 39, 39, 39,
39, 39, 39, 39, 311, 313, 293, 39, 39, 39,
39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
39, 39, 39, 39, 39, 39, 98, 39, 39, 39,
106, 317, 318, 325, 330, 39, 191, 39, 39, 39,
39, 39, 39, 39, 39, 39, 39, 341, 353, 39,
186, 314, 368, 373, 141, 380, 39, 39, 420, 320,
385, 386, 393, 395, 396, 398, 327, 400, 156, 401,
404, 405, 409, 411, 413, 68, 415, 176, 177, 178,
179, 416, 72, 195, 418, 75, 419, 74, 186, 186,
186, 186, 197, 421, 200, 183, 37, 187, 188, 189,
190, 73, 191, 35, 179, 186, 186, 18, 186, 186,
186, 186, 37, 186, 186, 186, 216, 48, 35, 78,
410, 366, 197, 197, 197, 197, 197, 197, 0, 0,
232, 233, 234, 235, 236, 0, 0, 0, 0, 0,
239, 0, 369, 0, 39, 0, 0, 0, 375, 376,
0, 39, 0, 379, 39, 0, 39, 157, 158, 159,
160, 0, 0, 163, 164, 20, 0, 0, 69, 0,
39, 186, 0, 0, 0, 263, 264, 265, 266, 268,
270, 271, 272, 273, 274, 276, 278, 280, 282, 284,
285, 286, 288, 0, 0, 0, 0, 397, 176, 177,
178, 179, 0, 0, 402, 0, 0, 0, 0, 186,
0, 0, 0, 0, 0, 0, 0, 0, 187, 188,
189, 190, 0, 191, 0, 0, 0, 185, 0, 0,
414, 0, 0, 0, 39, 0, 0, 39, 0, 417,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 68, 263, 0, 184, 0, 0,
0, 72, 0, 0, 75, 185, 74, 0, 343, 0,
344, 0, 0, 0, 0, 0, 346, 0, 347, 0,
348, 0, 349, 0, 350, 0, 0, 0, 351, 0,
0, 0, 0, 0, 354, 184, 0, 0, 19, 21,
0, 0, 22, 23, 24, 0, 0, 0, 25, 26,
27, 28, 29, 30, 31, 32, 33, 0, 197, 197,
34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
44, 45, 46, 47, 48, 49, 50, 51, 52, 0,
53, 54, 55, 0, 20, 0, 390, 69, 56, 0,
57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
0, 0, 67, 0, 0, 0, 0, 39, 39, 70,
71, 39, 39, 39, 0, 0, 0, 39, 39, 39,
39, 39, 39, 39, 39, 39, 0, 0, 0, 39,
39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
39, 39, 39, 39, 39, 39, 39, 39, 0, 39,
39, 39, 0, 0, 0, 0, 0, 39, 0, 39,
39, 39, 39, 39, 39, 39, 39, 39, 39, 0,
0, 39, 0, 68, 176, 177, 178, 179, 39, 39,
72, 0, 0, 75, 0, 74, 176, 177, 178, 179,
0, 182, 183, 0, 187, 188, 189, 190, 0, 191,
0, 0, 0, 0, 0, 0, 187, 188, 189, 190,
0, 191, 176, 177, 178, 179, 0, 0, 95, 0,
0, 22, 23, 24, 0, 0, 0, 25, 26, 27,
28, 29, 187, 188, 189, 190, 0, 191, 0, 34,
35, 0, 37, 38, 39, 40, 41, 42, 43, 44,
45, 46, 47, 48, 49, 50, 51, 52, 0, 53,
54, 55, 0, 20, 0, 0, 69, 56, 0, 96,
58, 59, 60, 61, 62, 63, 64, 65, 66, 0,
68, 67, 0, 0, 0, 0, 0, 72, 70, 71,
75, 0, 74, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 68, 0, 0, 0, 0, 0,
0, 72, 161, 0, 75, 0, 74, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
20, 0, 0, 69, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 186, 0, 0, 0, 0, 0, 151, 0, 0,
22, 23, 24, 0, 0, 0, 25, 26, 27, 28,
29, 345, 0, 0, 180, 0, 181, 0, 34, 35,
0, 37, 38, 39, 40, 41, 42, 43, 44, 45,
46, 47, 48, 49, 50, 51, 52, 69, 53, 54,
55, 0, 0, 0, 0, 0, 56, 185, 152, 58,
59, 60, 61, 62, 63, 64, 65, 66, 0, 68,
67, 0, 0, 0, 0, 0, 72, 70, 71, 75,
71, 74, 0, 71, 0, 0, 0, 184, 0, 0,
0, 0, 0, 0, 0, 0, 0, 71, 71, 0,
71, 0, 71, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 21, 0, 0, 22, 23, 24,
0, 0, 0, 25, 26, 27, 28, 29, 0, 0,
0, 0, 71, 0, 0, 34, 35, 0, 37, 38,
39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
49, 50, 51, 52, 0, 53, 54, 55, 0, 0,
0, 0, 69, 56, 0, 57, 58, 59, 60, 61,
62, 63, 64, 65, 66, 0, 0, 67, 21, 0,
0, 22, 23, 24, 70, 71, 68, 25, 26, 27,
28, 29, 0, 72, 222, 0, 75, 0, 74, 34,
35, 0, 37, 38, 39, 40, 41, 42, 43, 44,
45, 46, 47, 48, 49, 50, 51, 52, 0, 53,
54, 55, 0, 0, 0, 0, 175, 56, 0, 57,
58, 59, 60, 61, 62, 63, 64, 65, 66, 0,
0, 67, 0, 0, 0, 0, 0, 0, 70, 71,
68, 0, 0, 0, 0, 0, 0, 72, 230, 0,
75, 0, 74, 0, 176, 177, 178, 179, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 69,
0, 182, 183, 0, 187, 188, 189, 190, 0, 191,
0, 0, 19, 21, 0, 0, 22, 23, 24, 0,
0, 0, 25, 26, 27, 28, 29, 0, 0, 0,
71, 71, 71, 71, 34, 35, 0, 37, 38, 39,
40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
50, 51, 52, 0, 53, 54, 55, 0, 0, 0,
0, 0, 56, 69, 57, 58, 59, 60, 61, 62,
63, 64, 65, 66, 0, 0, 67, 0, 0, 0,
0, 68, 0, 70, 71, 0, 71, 71, 72, 0,
0, 75, 0, 74, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 267,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
199, 0, 0, 22, 23, 24, 0, 0, 0, 25,
26, 27, 28, 29, 0, 0, 0, 0, 0, 0,
0, 34, 35, 0, 37, 38, 39, 40, 41, 42,
43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
0, 53, 54, 55, 69, 0, 0, 0, 0, 56,
0, 57, 58, 59, 60, 61, 62, 63, 64, 65,
66, 0, 72, 67, 21, 72, 0, 22, 23, 24,
70, 71, 0, 25, 26, 27, 28, 29, 0, 72,
72, 0, 72, 0, 72, 34, 35, 0, 37, 38,
39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
49, 50, 51, 52, 0, 53, 54, 55, 0, 0,
0, 0, 0, 56, 72, 57, 58, 59, 60, 61,
62, 63, 64, 65, 66, 0, 68, 67, 0, 0,
0, 0, 0, 72, 70, 71, 75, 0, 74, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 269, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 21, 0, 0, 22, 23,
24, 0, 0, 0, 25, 26, 27, 28, 29, 0,
0, 0, 0, 0, 0, 0, 34, 35, 0, 37,
38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
48, 49, 50, 51, 52, 0, 53, 54, 55, 69,
0, 0, 74, 0, 56, 74, 57, 58, 59, 60,
61, 62, 63, 64, 65, 66, 0, 68, 67, 74,
74, 0, 74, 0, 72, 70, 71, 75, 0, 74,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 275, 0, 0, 0, 0,
0, 0, 0, 0, 74, 0, 0, 0, 0, 0,
0, 0, 0, 0, 72, 0, 0, 0, 0, 0,
0, 0, 72, 72, 72, 72, 0, 0, 0, 0,
0, 68, 0, 0, 0, 0, 0, 0, 72, 0,
0, 75, 0, 74, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 277,
69, 0, 0, 0, 0, 0, 0, 0, 0, 72,
72, 0, 0, 0, 186, 0, 0, 0, 72, 72,
21, 0, 0, 22, 23, 24, 0, 0, 0, 25,
26, 27, 28, 29, 0, 0, 0, 180, 0, 181,
0, 34, 35, 0, 37, 38, 39, 40, 41, 42,
43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
0, 53, 54, 55, 69, 0, 0, 0, 0, 56,
185, 57, 58, 59, 60, 61, 62, 63, 64, 65,
66, 0, 68, 67, 0, 0, 0, 0, 0, 72,
70, 71, 75, 0, 74, 0, 0, 0, 0, 0,
184, 0, 0, 0, 0, 0, 0, 0, 0, 0,
279, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 74, 74, 74, 74, 0, 0, 0, 0,
0, 21, 0, 0, 22, 23, 24, 0, 0, 0,
25, 26, 27, 28, 29, 0, 0, 0, 0, 0,
0, 0, 34, 35, 0, 37, 38, 39, 40, 41,
42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
52, 0, 53, 54, 55, 69, 0, 0, 74, 74,
56, 0, 57, 58, 59, 60, 61, 62, 63, 64,
65, 66, 0, 73, 67, 21, 73, 0, 22, 23,
24, 70, 71, 0, 25, 26, 27, 28, 29, 0,
73, 73, 0, 73, 0, 73, 34, 35, 0, 37,
38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
48, 49, 50, 51, 52, 0, 53, 54, 55, 175,
0, 0, 0, 0, 56, 73, 57, 58, 59, 60,
61, 62, 63, 64, 65, 66, 0, 68, 67, 0,
0, 0, 0, 0, 72, 70, 71, 75, 0, 74,
0, 0, 0, 0, 0, 0, 0, 176, 177, 178,
179, 0, 0, 0, 0, 281, 0, 0, 0, 0,
0, 0, 0, 0, 182, 183, 186, 187, 188, 189,
190, 0, 191, 0, 0, 0, 21, 0, 0, 22,
23, 24, 0, 0, 0, 25, 26, 27, 28, 29,
0, 181, 0, 0, 0, 0, 0, 34, 35, 0,
37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
47, 48, 49, 50, 51, 52, 0, 53, 54, 55,
69, 0, 185, 0, 0, 56, 0, 57, 58, 59,
60, 61, 62, 63, 64, 65, 66, 0, 68, 67,
0, 0, 0, 0, 0, 72, 70, 71, 75, 0,
74, 0, 184, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 283, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 73, 0, 0, 0, 0,
0, 0, 0, 73, 73, 73, 73, 0, 0, 0,
0, 0, 68, 0, 0, 0, 0, 0, 0, 72,
0, 0, 75, 0, 74, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
287, 69, 0, 0, 0, 0, 0, 0, 0, 0,
73, 0, 0, 0, 0, 0, 0, 0, 0, 73,
73, 21, 0, 0, 22, 23, 24, 0, 0, 0,
25, 26, 27, 28, 29, 0, 0, 0, 0, 0,
0, 0, 34, 35, 0, 37, 38, 39, 40, 41,
42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
52, 175, 53, 54, 55, 69, 0, 0, 0, 0,
56, 0, 57, 58, 59, 60, 61, 62, 63, 64,
65, 66, 0, 0, 67, 0, 68, 0, 0, 0,
0, 70, 71, 72, 296, 0, 75, 0, 74, 176,
177, 178, 179, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 182, 183, 0, 187,
188, 189, 190, 0, 191, 0, 0, 0, 0, 0,
0, 0, 21, 0, 0, 22, 23, 24, 0, 0,
0, 25, 26, 27, 28, 29, 0, 0, 0, 0,
0, 0, 0, 34, 35, 0, 37, 38, 39, 40,
41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
51, 52, 0, 53, 54, 55, 0, 0, 0, 69,
0, 56, 0, 57, 58, 59, 60, 61, 62, 63,
64, 65, 66, 0, 0, 67, 21, 0, 0, 22,
23, 24, 70, 71, 68, 25, 26, 27, 28, 29,
0, 72, 298, 0, 75, 0, 74, 34, 35, 0,
37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
47, 48, 49, 50, 51, 52, 0, 53, 54, 55,
0, 0, 0, 0, 0, 56, 0, 57, 58, 59,
60, 61, 62, 63, 64, 65, 66, 0, 0, 67,
0, 0, 0, 0, 0, 0, 70, 71, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 68, 0,
0, 0, 0, 0, 0, 72, 331, 0, 75, 0,
74, 0, 0, 0, 0, 0, 0, 69, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
21, 0, 0, 22, 23, 24, 0, 0, 0, 25,
26, 27, 28, 29, 0, 0, 0, 0, 0, 0,
0, 34, 35, 0, 37, 38, 39, 40, 41, 42,
43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
0, 53, 54, 55, 0, 0, 0, 0, 0, 56,
0, 57, 58, 59, 60, 61, 62, 63, 64, 65,
66, 69, 0, 67, 0, 68, 0, 0, 0, 0,
70, 71, 72, 333, 0, 75, 0, 74, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 21, 0,
0, 22, 23, 24, 0, 0, 0, 25, 26, 27,
28, 29, 0, 0, 0, 0, 0, 0, 0, 34,
35, 0, 37, 38, 39, 40, 41, 42, 43, 44,
45, 46, 47, 48, 49, 50, 51, 52, 69, 53,
54, 55, 0, 0, 0, 0, 0, 56, 0, 57,
58, 59, 60, 61, 62, 63, 64, 65, 66, 0,
0, 67, 0, 0, 186, 0, 0, 0, 70, 71,
178, 0, 21, 0, 0, 22, 23, 24, 0, 0,
0, 25, 26, 27, 28, 29, 0, 186, 0, 186,
0, 0, 0, 34, 35, 0, 37, 38, 39, 40,
41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
51, 52, 0, 53, 54, 55, 0, 0, 0, 0,
186, 56, 0, 57, 58, 59, 60, 61, 62, 63,
64, 65, 66, 0, 0, 67, 0, 68, 0, 0,
0, 0, 70, 71, 72, 340, 0, 75, 0, 74,
186, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 21,
0, 0, 22, 23, 24, 0, 0, 0, 25, 26,
27, 28, 29, 0, 0, 0, 0, 0, 0, 0,
34, 35, 0, 37, 38, 39, 40, 41, 42, 43,
44, 45, 46, 47, 48, 49, 50, 51, 52, 0,
53, 54, 55, 0, 0, 0, 50, 0, 56, 50,
57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
69, 68, 67, 50, 50, 0, 0, 0, 72, 70,
71, 75, 0, 74, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 50, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 186,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 68, 0,
0, 0, 0, 0, 0, 72, 0, 0, 75, 0,
74, 0, 0, 0, 69, 0, 0, 186, 186, 186,
186, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 186, 186, 0, 186, 186, 186,
186, 0, 186, 186, 186, 0, 0, 0, 0, 0,
0, 21, 0, 0, 22, 23, 24, 0, 0, 0,
25, 26, 27, 28, 29, 0, 0, 0, 0, 0,
0, 0, 34, 35, 0, 37, 38, 39, 40, 41,
42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
52, 69, 53, 54, 55, 0, 0, 0, 0, 0,
56, 0, 57, 58, 59, 60, 61, 62, 63, 64,
65, 66, 0, 68, 67, 0, 0, 0, 0, 0,
72, 70, 71, 75, 0, 74, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 50, 50, 50, 50,
0, 0, 0, 0, 0, 21, 0, 0, 22, 23,
24, 0, 0, 0, 25, 26, 27, 28, 29, 0,
0, 0, 0, 0, 0, 0, 34, 35, 0, 37,
38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
48, 49, 50, 51, 52, 0, 53, 54, 55, 0,
0, 0, 50, 50, 56, 0, 57, 58, 59, 60,
61, 62, 63, 64, 65, 66, 69, 68, 67, 0,
0, 0, 0, 0, 72, 70, 71, 75, 0, 74,
0, 0, 140, 0, 0, 22, 23, 24, 0, 0,
0, 25, 26, 27, 28, 29, 0, 0, 0, 0,
0, 0, 0, 34, 35, 0, 37, 38, 39, 40,
41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
51, 52, 0, 53, 54, 55, 0, 0, 0, 0,
0, 56, 0, 57, 58, 59, 60, 61, 62, 63,
64, 65, 66, 0, 0, 67, 0, 0, 0, 0,
0, 0, 70, 71, 0, 0, 126, 0, 0, 126,
69, 0, 126, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 126, 126, 0, 126,
0, 126, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 196, 0, 0,
22, 23, 24, 0, 0, 0, 25, 26, 27, 28,
29, 126, 126, 0, 0, 0, 0, 0, 34, 35,
0, 37, 38, 39, 40, 41, 42, 43, 44, 45,
46, 47, 48, 49, 50, 51, 52, 0, 53, 54,
55, 0, 126, 0, 0, 0, 56, 0, 57, 58,
59, 60, 61, 62, 63, 64, 65, 66, 0, 0,
67, 0, 0, 0, 0, 0, 0, 70, 71, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 199, 0, 0, 22, 23, 24, 0, 0, 0,
25, 26, 27, 28, 29, 0, 0, 0, 0, 0,
0, 0, 34, 35, 0, 37, 38, 39, 40, 41,
42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
52, 0, 53, 54, 55, 0, 0, 0, 0, 0,
56, 0, 57, 58, 59, 60, 61, 62, 63, 64,
65, 66, 121, 0, 67, 121, 0, 0, 121, 0,
0, 70, 71, 0, 0, 0, 0, 0, 0, 0,
0, 0, 121, 121, 0, 121, 67, 121, 0, 67,
0, 126, 67, 0, 0, 0, 0, 0, 0, 126,
126, 126, 126, 0, 0, 0, 67, 67, 0, 67,
0, 67, 0, 0, 0, 0, 0, 121, 121, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 126,
126, 126, 126, 0, 0, 0, 0, 148, 0, 0,
148, 67, 67, 148, 0, 0, 126, 126, 121, 126,
126, 126, 126, 0, 126, 126, 126, 148, 148, 0,
148, 0, 148, 0, 0, 0, 0, 0, 0, 0,
0, 0, 67, 0, 149, 0, 0, 149, 0, 0,
149, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 148, 148, 149, 149, 0, 149, 0, 149,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 137, 0, 0, 137,
0, 0, 137, 148, 0, 0, 0, 0, 0, 149,
149, 0, 0, 0, 0, 0, 137, 137, 0, 137,
0, 137, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 157, 0, 0, 157, 0, 0, 157,
149, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 137, 137, 157, 157, 0, 157, 0, 157, 0,
0, 0, 0, 0, 0, 0, 0, 121, 0, 0,
0, 0, 0, 0, 0, 121, 121, 121, 121, 0,
0, 0, 137, 0, 0, 0, 0, 0, 157, 157,
0, 67, 0, 0, 0, 0, 0, 0, 0, 67,
67, 67, 67, 0, 0, 121, 121, 121, 121, 0,
0, 0, 0, 0, 0, 0, 0, 0, 94, 157,
0, 94, 121, 121, 94, 121, 121, 121, 121, 0,
121, 121, 121, 0, 0, 0, 0, 0, 94, 94,
0, 94, 148, 94, 0, 0, 67, 67, 0, 0,
148, 148, 148, 148, 0, 67, 67, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 94, 94, 0, 0, 0, 0, 149,
148, 148, 148, 148, 0, 0, 0, 149, 149, 149,
149, 0, 0, 49, 0, 0, 49, 148, 148, 0,
148, 148, 148, 148, 94, 148, 148, 148, 0, 0,
49, 49, 0, 0, 0, 0, 0, 149, 149, 149,
149, 137, 0, 0, 0, 0, 0, 0, 0, 137,
137, 137, 137, 0, 149, 149, 0, 149, 149, 149,
149, 0, 149, 149, 149, 49, 0, 0, 0, 0,
98, 0, 0, 98, 0, 0, 98, 0, 157, 137,
137, 137, 137, 0, 0, 0, 157, 157, 157, 157,
98, 98, 0, 98, 0, 98, 137, 137, 0, 137,
137, 137, 137, 0, 137, 137, 137, 0, 0, 0,
52, 0, 0, 52, 0, 0, 157, 157, 157, 157,
0, 0, 0, 0, 0, 98, 98, 52, 52, 0,
0, 0, 0, 157, 157, 0, 157, 157, 157, 157,
0, 157, 157, 157, 186, 0, 0, 186, 0, 0,
186, 0, 0, 0, 0, 0, 98, 0, 54, 0,
0, 54, 52, 94, 186, 186, 0, 186, 0, 186,
0, 94, 94, 94, 94, 54, 54, 0, 0, 0,
0, 0, 0, 0, 0, 0, 115, 0, 0, 115,
0, 0, 115, 0, 0, 0, 0, 0, 0, 186,
186, 94, 94, 94, 94, 0, 115, 115, 0, 115,
54, 115, 0, 0, 0, 0, 0, 0, 94, 94,
0, 94, 94, 94, 94, 0, 94, 94, 94, 120,
186, 0, 120, 0, 0, 120, 0, 0, 0, 0,
0, 115, 115, 49, 49, 49, 49, 0, 0, 120,
120, 0, 120, 0, 120, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 91, 115, 0, 91, 0, 0, 91, 0, 0,
0, 0, 0, 0, 120, 120, 0, 0, 0, 0,
0, 91, 91, 0, 91, 98, 91, 0, 0, 49,
49, 0, 0, 98, 98, 98, 98, 0, 0, 0,
0, 0, 0, 0, 0, 120, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 91, 91, 0, 0,
0, 0, 0, 98, 98, 98, 98, 0, 0, 0,
52, 52, 52, 52, 0, 0, 0, 0, 0, 0,
98, 98, 0, 98, 98, 98, 98, 91, 98, 98,
98, 90, 0, 0, 90, 0, 0, 90, 0, 186,
0, 0, 0, 0, 0, 0, 0, 186, 186, 186,
186, 90, 90, 0, 90, 0, 90, 0, 54, 54,
54, 54, 0, 0, 0, 0, 52, 52, 0, 0,
0, 0, 0, 0, 0, 0, 0, 186, 186, 186,
186, 115, 0, 0, 0, 0, 90, 90, 0, 115,
115, 115, 115, 0, 186, 186, 0, 186, 186, 186,
186, 0, 186, 186, 186, 173, 0, 0, 173, 0,
0, 0, 0, 0, 54, 54, 0, 90, 0, 115,
115, 115, 115, 0, 120, 173, 173, 0, 173, 0,
173, 0, 120, 120, 120, 120, 115, 115, 0, 115,
115, 115, 115, 0, 115, 115, 115, 175, 0, 0,
175, 0, 0, 0, 0, 0, 0, 0, 0, 0,
173, 173, 120, 120, 120, 120, 91, 175, 175, 0,
175, 0, 175, 0, 91, 91, 91, 91, 0, 120,
120, 0, 120, 120, 120, 120, 0, 120, 120, 120,
176, 173, 0, 176, 0, 0, 0, 0, 0, 0,
0, 0, 175, 175, 91, 91, 91, 91, 0, 0,
176, 176, 0, 176, 0, 176, 0, 0, 0, 0,
0, 91, 91, 0, 91, 91, 91, 91, 0, 91,
91, 91, 177, 175, 0, 177, 0, 0, 0, 0,
0, 0, 0, 0, 0, 176, 176, 0, 0, 0,
0, 0, 177, 177, 0, 177, 90, 177, 0, 0,
0, 0, 0, 0, 90, 90, 90, 90, 0, 0,
0, 0, 0, 0, 0, 0, 176, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 177, 177, 0,
0, 0, 0, 0, 90, 90, 90, 90, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 90, 90, 0, 90, 90, 90, 90, 177, 90,
90, 90, 75, 0, 0, 75, 0, 0, 75, 0,
173, 0, 0, 0, 0, 0, 0, 0, 173, 173,
173, 173, 75, 75, 0, 75, 0, 75, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 173, 173,
173, 173, 175, 0, 0, 0, 0, 75, 75, 0,
175, 175, 175, 175, 0, 173, 173, 0, 173, 173,
173, 173, 0, 173, 173, 173, 76, 0, 0, 76,
0, 0, 76, 0, 0, 0, 0, 0, 75, 0,
175, 175, 175, 175, 0, 176, 76, 76, 0, 76,
0, 76, 0, 176, 176, 176, 176, 175, 175, 0,
175, 175, 175, 175, 0, 175, 175, 175, 61, 0,
0, 61, 0, 0, 61, 0, 0, 0, 0, 0,
0, 76, 76, 176, 176, 176, 176, 177, 61, 61,
0, 61, 0, 61, 0, 177, 177, 177, 177, 0,
176, 176, 0, 176, 176, 176, 176, 0, 176, 176,
176, 62, 76, 0, 62, 0, 0, 62, 0, 0,
0, 0, 0, 61, 61, 177, 177, 177, 177, 0,
0, 62, 62, 0, 62, 0, 62, 0, 0, 0,
0, 0, 177, 177, 0, 177, 177, 177, 177, 0,
177, 177, 177, 63, 61, 0, 63, 0, 0, 63,
0, 0, 0, 0, 0, 0, 62, 62, 0, 0,
0, 0, 0, 63, 63, 0, 63, 75, 63, 0,
0, 0, 0, 0, 0, 75, 75, 75, 75, 0,
0, 0, 0, 0, 0, 0, 0, 62, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 63, 63,
0, 0, 0, 0, 0, 75, 75, 75, 75, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 75, 75, 0, 75, 75, 75, 75, 63,
0, 75, 75, 64, 0, 0, 64, 0, 0, 64,
0, 76, 0, 0, 0, 0, 0, 0, 0, 76,
76, 76, 76, 64, 64, 0, 64, 0, 64, 0,
0, 0, 0, 0, 0, 0, 0, 0, 55, 0,
0, 55, 0, 0, 0, 0, 0, 0, 0, 76,
76, 76, 76, 61, 0, 55, 55, 0, 64, 64,
0, 61, 61, 61, 61, 0, 76, 76, 0, 76,
76, 76, 76, 0, 0, 76, 76, 65, 0, 0,
65, 0, 0, 65, 0, 0, 0, 0, 0, 64,
55, 61, 61, 61, 61, 0, 62, 65, 65, 0,
65, 0, 65, 0, 62, 62, 62, 62, 61, 61,
0, 61, 61, 61, 61, 0, 0, 61, 61, 92,
0, 0, 92, 0, 0, 92, 0, 0, 0, 0,
0, 0, 65, 65, 62, 62, 62, 62, 63, 92,
92, 0, 92, 0, 92, 0, 63, 63, 63, 63,
0, 62, 62, 0, 62, 62, 0, 0, 0, 0,
62, 62, 87, 65, 0, 87, 0, 0, 87, 0,
0, 0, 0, 0, 92, 92, 63, 63, 0, 63,
0, 0, 87, 87, 0, 87, 125, 87, 0, 125,
0, 0, 125, 63, 63, 0, 63, 63, 60, 0,
0, 60, 63, 63, 0, 92, 125, 125, 0, 125,
0, 125, 0, 0, 0, 60, 60, 87, 87, 0,
0, 0, 0, 0, 0, 0, 0, 0, 64, 0,
0, 0, 0, 0, 0, 0, 64, 64, 64, 64,
0, 125, 125, 0, 0, 0, 0, 0, 87, 0,
60, 0, 0, 66, 0, 0, 66, 0, 0, 66,
0, 0, 0, 0, 0, 0, 64, 64, 55, 55,
55, 55, 125, 66, 66, 0, 66, 0, 66, 0,
0, 0, 0, 64, 64, 0, 64, 64, 0, 0,
0, 0, 64, 64, 68, 0, 0, 68, 0, 0,
68, 0, 65, 0, 0, 0, 0, 0, 66, 66,
65, 65, 65, 65, 68, 68, 0, 68, 0, 68,
0, 0, 0, 0, 55, 55, 0, 0, 0, 59,
0, 0, 59, 0, 0, 0, 0, 0, 0, 66,
65, 65, 0, 0, 92, 0, 59, 59, 0, 68,
68, 0, 92, 92, 92, 92, 0, 65, 65, 0,
65, 65, 0, 0, 0, 0, 65, 65, 156, 0,
0, 156, 0, 0, 156, 0, 0, 0, 0, 0,
68, 59, 92, 92, 0, 0, 0, 87, 156, 156,
0, 156, 0, 156, 0, 87, 87, 87, 87, 92,
92, 0, 0, 0, 0, 0, 0, 0, 92, 92,
0, 125, 0, 0, 0, 0, 0, 0, 0, 125,
125, 125, 125, 156, 156, 87, 87, 0, 60, 60,
60, 60, 0, 0, 0, 88, 0, 0, 88, 0,
0, 88, 87, 87, 58, 0, 0, 58, 0, 125,
125, 87, 87, 0, 156, 88, 88, 0, 88, 0,
88, 58, 58, 0, 0, 0, 125, 125, 0, 0,
0, 0, 0, 0, 0, 125, 125, 0, 66, 0,
0, 0, 0, 0, 60, 60, 66, 66, 66, 66,
88, 88, 0, 0, 0, 0, 58, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 66, 0, 68,
0, 88, 0, 0, 0, 0, 0, 68, 68, 68,
68, 0, 172, 66, 66, 172, 0, 0, 172, 0,
0, 0, 66, 66, 123, 0, 0, 123, 0, 0,
123, 0, 172, 172, 0, 172, 0, 172, 0, 59,
59, 59, 59, 0, 123, 123, 0, 123, 0, 123,
0, 0, 0, 0, 68, 68, 0, 0, 0, 0,
0, 0, 0, 68, 68, 0, 0, 172, 172, 0,
0, 0, 0, 156, 0, 0, 0, 0, 0, 123,
123, 156, 156, 156, 156, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 59, 59, 77, 172, 0,
77, 0, 0, 77, 0, 0, 0, 0, 0, 0,
123, 156, 156, 156, 156, 0, 0, 77, 77, 0,
77, 0, 77, 0, 0, 0, 0, 0, 156, 156,
0, 156, 156, 156, 156, 0, 156, 0, 0, 0,
88, 0, 0, 0, 0, 0, 0, 0, 88, 88,
88, 88, 77, 77, 58, 58, 58, 58, 0, 0,
0, 0, 0, 0, 174, 0, 0, 174, 0, 0,
174, 0, 0, 0, 0, 0, 0, 0, 88, 88,
88, 88, 0, 77, 174, 174, 0, 174, 0, 174,
56, 0, 0, 56, 0, 88, 88, 0, 88, 88,
88, 88, 0, 88, 0, 0, 0, 56, 56, 0,
58, 58, 0, 0, 0, 0, 0, 0, 0, 174,
174, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 172, 0, 0,
0, 0, 56, 0, 0, 172, 172, 172, 172, 123,
174, 0, 0, 0, 0, 0, 0, 123, 123, 123,
123, 80, 0, 0, 80, 0, 0, 80, 0, 0,
0, 0, 0, 0, 0, 172, 172, 172, 172, 0,
0, 80, 80, 0, 80, 0, 80, 123, 123, 123,
123, 0, 172, 172, 0, 172, 172, 172, 172, 0,
172, 0, 0, 0, 123, 123, 0, 123, 123, 123,
123, 0, 123, 0, 0, 0, 80, 80, 81, 0,
0, 81, 77, 0, 81, 0, 0, 0, 0, 0,
77, 77, 77, 77, 0, 0, 0, 0, 81, 81,
0, 81, 0, 81, 0, 186, 0, 80, 307, 0,
0, 293, 0, 0, 0, 0, 0, 0, 0, 0,
77, 77, 77, 77, 0, 0, 0, 0, 180, 0,
181, 0, 0, 81, 81, 0, 0, 77, 77, 0,
77, 77, 77, 77, 0, 77, 0, 78, 0, 174,
78, 0, 0, 78, 0, 0, 0, 174, 174, 174,
174, 185, 0, 0, 81, 0, 0, 78, 78, 0,
78, 0, 78, 79, 0, 0, 79, 0, 0, 79,
56, 56, 56, 56, 0, 0, 0, 174, 174, 174,
174, 184, 0, 79, 79, 0, 79, 0, 79, 0,
0, 0, 78, 78, 174, 174, 0, 174, 174, 174,
174, 0, 174, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 186, 0, 0, 0, 79, 79,
293, 0, 0, 78, 0, 186, 56, 56, 0, 0,
0, 291, 0, 0, 0, 0, 80, 180, 57, 181,
0, 57, 0, 0, 80, 80, 80, 80, 180, 79,
181, 0, 0, 0, 0, 57, 57, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
185, 0, 0, 0, 80, 80, 80, 80, 0, 0,
0, 185, 0, 0, 0, 0, 0, 0, 0, 0,
57, 80, 80, 81, 80, 80, 80, 80, 0, 80,
184, 81, 81, 81, 81, 0, 0, 0, 0, 0,
0, 184, 0, 0, 0, 0, 68, 0, 0, 0,
175, 0, 0, 72, 0, 0, 75, 0, 74, 0,
0, 81, 81, 81, 81, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 81, 81,
0, 81, 81, 81, 81, 0, 81, 0, 176, 177,
178, 179, 78, 0, 0, 0, 0, 0, 0, 0,
78, 78, 78, 78, 148, 182, 183, 0, 187, 188,
189, 190, 0, 191, 0, 0, 0, 0, 79, 0,
53, 0, 0, 53, 0, 0, 79, 79, 79, 79,
78, 78, 78, 78, 0, 0, 147, 53, 53, 69,
0, 0, 0, 70, 0, 0, 70, 78, 78, 0,
78, 78, 78, 78, 0, 78, 79, 79, 79, 79,
70, 70, 0, 70, 0, 70, 0, 0, 0, 175,
0, 0, 53, 79, 79, 0, 79, 79, 79, 79,
175, 79, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 69, 70, 70, 69, 57, 57,
57, 57, 0, 0, 0, 0, 0, 176, 177, 178,
179, 69, 69, 0, 69, 0, 69, 0, 176, 177,
178, 179, 0, 0, 182, 183, 70, 187, 188, 189,
190, 0, 191, 0, 0, 182, 183, 0, 187, 188,
189, 190, 0, 191, 0, 0, 69, 69, 0, 0,
0, 0, 0, 0, 57, 57, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
21, 0, 0, 22, 23, 24, 0, 69, 0, 25,
26, 27, 28, 29, 0, 0, 0, 0, 0, 0,
0, 34, 35, 0, 37, 38, 39, 40, 41, 42,
43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
0, 53, 54, 55, 0, 0, 0, 0, 0, 56,
0, 57, 58, 59, 60, 61, 62, 63, 64, 65,
66, 0, 0, 67, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
53, 53, 53, 53, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 70, 0, 0, 0, 0,
0, 0, 0, 70, 70, 70, 70, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 154, 0, 0, 0, 0, 0, 162, 0,
0, 0, 0, 0, 0, 0, 53, 53, 0, 0,
0, 0, 0, 0, 0, 0, 69, 0, 0, 0,
70, 70, 0, 0, 69, 69, 69, 69, 0, 70,
70, 0, 0, 207, 0, 210, 0, 212, 0, 214,
0, 0, 217, 0, 221, 0, 0, 0, 0, 0,
0, 0, 0, 0, 231, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 240, 0,
0, 69, 69, 245, 246, 247, 248, 249, 250, 251,
69, 69, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 259, 260, 261, 262,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 297, 299,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 310, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 329, 0, 332,
334, 0, 0, 0, 0, 0, 0, 0, 339, 0,
0, 0, 0, 342, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 352, 0, 0,
0, 0, 0, 0, 0, 0, 0, 358, 0, 0,
0, 0, 0, 0, 0, 0, 0, 207, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 382, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 388,
};
short yycheck[] = { 17,
0, 41, 40, 40, 44, 40, 61, 25, 44, 40,
40, 125, 30, 31, 32, 33, 40, 40, 40, 257,
108, 28, 110, 93, 112, 257, 114, 257, 257, 41,
91, 44, 40, 33, 44, 40, 40, 40, 217, 136,
40, 138, 221, 43, 257, 45, 44, 59, 66, 67,
40, 121, 122, 123, 124, 125, 126, 44, 91, 59,
91, 240, 123, 41, 258, 323, 324, 216, 326, 0,
41, 265, 41, 311, 307, 44, 225, 226, 310, 308,
93, 59, 61, 93, 233, 234, 235, 236, 59, 238,
123, 123, 123, 123, 101, 93, 103, 104, 59, 123,
123, 123, 33, 297, 41, 41, 93, 41, 44, 40,
44, 305, 43, 301, 45, 303, 304, 44, 297, 41,
299, 41, 59, 123, 257, 125, 126, 44, 59, 327,
328, 310, 59, 321, 322, 323, 324, 59, 326, 59,
303, 304, 59, 44, 258, 294, 40, 165, 40, 167,
40, 265, 40, 332, 38, 334, 59, 44, 59, 308,
323, 324, 40, 326, 303, 38, 41, 316, 41, 44,
41, 44, 59, 44, 323, 324, 275, 276, 277, 358,
303, 304, 40, 297, 323, 324, 41, 326, 61, 44,
63, 305, 123, 41, 41, 126, 44, 44, 321, 322,
323, 324, 257, 326, 41, 41, 355, 44, 44, 40,
94, 40, 40, 40, 40, 303, 304, 305, 306, 257,
257, 94, 257, 372, 312, 40, 40, 40, 40, 378,
40, 271, 272, 273, 274, 271, 272, 273, 274, 40,
124, 40, 307, 40, 40, 308, 41, 317, 318, 257,
399, 124, 257, 123, 257, 40, 256, 257, 258, 40,
260, 261, 262, 40, 44, 265, 266, 267, 268, 269,
270, 271, 272, 273, 274, 38, 311, 365, 278, 279,
280, 281, 282, 283, 284, 285, 286, 287, 288, 289,
290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
300, 389, 310, 308, 308, 305, 306, 310, 308, 309,
310, 311, 312, 313, 314, 315, 316, 317, 308, 91,
320, 41, 44, 41, 41, 256, 257, 327, 328, 260,
261, 262, 44, 41, 41, 266, 267, 268, 269, 270,
271, 272, 273, 274, 59, 41, 44, 278, 279, 280,
281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
291, 292, 293, 294, 295, 296, 25, 298, 299, 300,
29, 44, 44, 41, 123, 306, 326, 308, 309, 310,
311, 312, 313, 314, 315, 316, 317, 91, 41, 320,
263, 224, 41, 41, 53, 41, 327, 328, 416, 232,
125, 125, 41, 59, 41, 41, 239, 41, 67, 41,
41, 125, 41, 41, 41, 33, 125, 301, 302, 303,
304, 41, 40, 89, 41, 43, 41, 45, 301, 302,
303, 304, 91, 41, 93, 319, 41, 321, 322, 323,
324, 59, 326, 59, 41, 318, 319, 59, 321, 322,
323, 324, 59, 326, 327, 328, 115, 41, 41, 12,
395, 311, 121, 122, 123, 124, 125, 126, -1, -1,
129, 130, 131, 132, 133, -1, -1, -1, -1, -1,
139, -1, 315, -1, 33, -1, -1, -1, 321, 322,
-1, 40, -1, 326, 43, -1, 45, 68, 69, 70,
71, -1, -1, 74, 75, 123, -1, -1, 126, -1,
59, 38, -1, -1, -1, 174, 175, 176, 177, 178,
179, 180, 181, 182, 183, 184, 185, 186, 187, 188,
189, 190, 191, -1, -1, -1, -1, 370, 301, 302,
303, 304, -1, -1, 377, -1, -1, -1, -1, 38,
-1, -1, -1, -1, -1, -1, -1, -1, 321, 322,
323, 324, -1, 326, -1, -1, -1, 94, -1, -1,
403, -1, -1, -1, 123, -1, -1, 126, -1, 412,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 33, 254, -1, 124, -1, -1,
-1, 40, -1, -1, 43, 94, 45, -1, 267, -1,
269, -1, -1, -1, -1, -1, 275, -1, 277, -1,
279, -1, 281, -1, 283, -1, -1, -1, 287, -1,
-1, -1, -1, -1, 293, 124, -1, -1, 256, 257,
-1, -1, 260, 261, 262, -1, -1, -1, 266, 267,
268, 269, 270, 271, 272, 273, 274, -1, 317, 318,
278, 279, 280, 281, 282, 283, 284, 285, 286, 287,
288, 289, 290, 291, 292, 293, 294, 295, 296, -1,
298, 299, 300, -1, 123, -1, 345, 126, 306, -1,
308, 309, 310, 311, 312, 313, 314, 315, 316, 317,
-1, -1, 320, -1, -1, -1, -1, 256, 257, 327,
328, 260, 261, 262, -1, -1, -1, 266, 267, 268,
269, 270, 271, 272, 273, 274, -1, -1, -1, 278,
279, 280, 281, 282, 283, 284, 285, 286, 287, 288,
289, 290, 291, 292, 293, 294, 295, 296, -1, 298,
299, 300, -1, -1, -1, -1, -1, 306, -1, 308,
309, 310, 311, 312, 313, 314, 315, 316, 317, -1,
-1, 320, -1, 33, 301, 302, 303, 304, 327, 328,
40, -1, -1, 43, -1, 45, 301, 302, 303, 304,
-1, 318, 319, -1, 321, 322, 323, 324, -1, 326,
-1, -1, -1, -1, -1, -1, 321, 322, 323, 324,
-1, 326, 301, 302, 303, 304, -1, -1, 257, -1,
-1, 260, 261, 262, -1, -1, -1, 266, 267, 268,
269, 270, 321, 322, 323, 324, -1, 326, -1, 278,
279, -1, 281, 282, 283, 284, 285, 286, 287, 288,
289, 290, 291, 292, 293, 294, 295, 296, -1, 298,
299, 300, -1, 123, -1, -1, 126, 306, -1, 308,
309, 310, 311, 312, 313, 314, 315, 316, 317, -1,
33, 320, -1, -1, -1, -1, -1, 40, 327, 328,
43, -1, 45, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 33, -1, -1, -1, -1, -1,
-1, 40, 41, -1, 43, -1, 45, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
123, -1, -1, 126, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 38, -1, -1, -1, -1, -1, 257, -1, -1,
260, 261, 262, -1, -1, -1, 266, 267, 268, 269,
270, 58, -1, -1, 61, -1, 63, -1, 278, 279,
-1, 281, 282, 283, 284, 285, 286, 287, 288, 289,
290, 291, 292, 293, 294, 295, 296, 126, 298, 299,
300, -1, -1, -1, -1, -1, 306, 94, 308, 309,
310, 311, 312, 313, 314, 315, 316, 317, -1, 33,
320, -1, -1, -1, -1, -1, 40, 327, 328, 43,
41, 45, -1, 44, -1, -1, -1, 124, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 58, 59, -1,
61, -1, 63, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 257, -1, -1, 260, 261, 262,
-1, -1, -1, 266, 267, 268, 269, 270, -1, -1,
-1, -1, 93, -1, -1, 278, 279, -1, 281, 282,
283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
293, 294, 295, 296, -1, 298, 299, 300, -1, -1,
-1, -1, 126, 306, -1, 308, 309, 310, 311, 312,
313, 314, 315, 316, 317, -1, -1, 320, 257, -1,
-1, 260, 261, 262, 327, 328, 33, 266, 267, 268,
269, 270, -1, 40, 41, -1, 43, -1, 45, 278,
279, -1, 281, 282, 283, 284, 285, 286, 287, 288,
289, 290, 291, 292, 293, 294, 295, 296, -1, 298,
299, 300, -1, -1, -1, -1, 263, 306, -1, 308,
309, 310, 311, 312, 313, 314, 315, 316, 317, -1,
-1, 320, -1, -1, -1, -1, -1, -1, 327, 328,
33, -1, -1, -1, -1, -1, -1, 40, 41, -1,
43, -1, 45, -1, 301, 302, 303, 304, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 126,
-1, 318, 319, -1, 321, 322, 323, 324, -1, 326,
-1, -1, 256, 257, -1, -1, 260, 261, 262, -1,
-1, -1, 266, 267, 268, 269, 270, -1, -1, -1,
271, 272, 273, 274, 278, 279, -1, 281, 282, 283,
284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
294, 295, 296, -1, 298, 299, 300, -1, -1, -1,
-1, -1, 306, 126, 308, 309, 310, 311, 312, 313,
314, 315, 316, 317, -1, -1, 320, -1, -1, -1,
-1, 33, -1, 327, 328, -1, 327, 328, 40, -1,
-1, 43, -1, 45, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 61,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
257, -1, -1, 260, 261, 262, -1, -1, -1, 266,
267, 268, 269, 270, -1, -1, -1, -1, -1, -1,
-1, 278, 279, -1, 281, 282, 283, 284, 285, 286,
287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
-1, 298, 299, 300, 126, -1, -1, -1, -1, 306,
-1, 308, 309, 310, 311, 312, 313, 314, 315, 316,
317, -1, 41, 320, 257, 44, -1, 260, 261, 262,
327, 328, -1, 266, 267, 268, 269, 270, -1, 58,
59, -1, 61, -1, 63, 278, 279, -1, 281, 282,
283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
293, 294, 295, 296, -1, 298, 299, 300, -1, -1,
-1, -1, -1, 306, 93, 308, 309, 310, 311, 312,
313, 314, 315, 316, 317, -1, 33, 320, -1, -1,
-1, -1, -1, 40, 327, 328, 43, -1, 45, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 61, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 257, -1, -1, 260, 261,
262, -1, -1, -1, 266, 267, 268, 269, 270, -1,
-1, -1, -1, -1, -1, -1, 278, 279, -1, 281,
282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
292, 293, 294, 295, 296, -1, 298, 299, 300, 126,
-1, -1, 41, -1, 306, 44, 308, 309, 310, 311,
312, 313, 314, 315, 316, 317, -1, 33, 320, 58,
59, -1, 61, -1, 40, 327, 328, 43, -1, 45,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 61, -1, -1, -1, -1,
-1, -1, -1, -1, 93, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 263, -1, -1, -1, -1, -1,
-1, -1, 271, 272, 273, 274, -1, -1, -1, -1,
-1, 33, -1, -1, -1, -1, -1, -1, 40, -1,
-1, 43, -1, 45, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 61,
126, -1, -1, -1, -1, -1, -1, -1, -1, 318,
319, -1, -1, -1, 38, -1, -1, -1, 327, 328,
257, -1, -1, 260, 261, 262, -1, -1, -1, 266,
267, 268, 269, 270, -1, -1, -1, 61, -1, 63,
-1, 278, 279, -1, 281, 282, 283, 284, 285, 286,
287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
-1, 298, 299, 300, 126, -1, -1, -1, -1, 306,
94, 308, 309, 310, 311, 312, 313, 314, 315, 316,
317, -1, 33, 320, -1, -1, -1, -1, -1, 40,
327, 328, 43, -1, 45, -1, -1, -1, -1, -1,
124, -1, -1, -1, -1, -1, -1, -1, -1, -1,
61, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 271, 272, 273, 274, -1, -1, -1, -1,
-1, 257, -1, -1, 260, 261, 262, -1, -1, -1,
266, 267, 268, 269, 270, -1, -1, -1, -1, -1,
-1, -1, 278, 279, -1, 281, 282, 283, 284, 285,
286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
296, -1, 298, 299, 300, 126, -1, -1, 327, 328,
306, -1, 308, 309, 310, 311, 312, 313, 314, 315,
316, 317, -1, 41, 320, 257, 44, -1, 260, 261,
262, 327, 328, -1, 266, 267, 268, 269, 270, -1,
58, 59, -1, 61, -1, 63, 278, 279, -1, 281,
282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
292, 293, 294, 295, 296, -1, 298, 299, 300, 263,
-1, -1, -1, -1, 306, 93, 308, 309, 310, 311,
312, 313, 314, 315, 316, 317, -1, 33, 320, -1,
-1, -1, -1, -1, 40, 327, 328, 43, -1, 45,
-1, -1, -1, -1, -1, -1, -1, 301, 302, 303,
304, -1, -1, -1, -1, 61, -1, -1, -1, -1,
-1, -1, -1, -1, 318, 319, 38, 321, 322, 323,
324, -1, 326, -1, -1, -1, 257, -1, -1, 260,
261, 262, -1, -1, -1, 266, 267, 268, 269, 270,
-1, 63, -1, -1, -1, -1, -1, 278, 279, -1,
281, 282, 283, 284, 285, 286,